iT邦幫忙

2023 iThome 鐵人賽

DAY 11
0

還記得學生時期,在寫 C 語言時,總是會先在程式碼上方,宣告各種變數與函式簽章,才在下方陸續寫程式。儘管現在在寫 JavaScript 時,開始強調變數與用到它的敘述應該放在附近這樣的程式碼風格,但是總還是會習慣先宣告變數再去用它。

但在去年 LeSS in Action 課程時,在 Terry Yin 和 Joey Chen 等的指導下,他們教了在實務上,應該是先用到再去宣告。也就是我先在某個敘述中,使用了某個變數、函數,再由編輯器協助去建立相關宣告的程式碼。而這個思維讓我眼睛一亮。

除了透過編輯器的協助,讓他根據我使用敘述的脈絡快速幫忙建立相關宣告與簽章外。其實也隱含了與測試驅動開發、驗收驅動開發等實踐類似的概念。

對我來說,測試驅動開發與驗收驅動開發,其實也是建立一個需要的情境,就像是我某個敘述要用到某個變數或函式一樣,只是層級不一樣而已。在寫測試時,也是在測試先寫要用到的物件、方法,然後再由編輯器幫忙新增。這樣的好處也是讓我們能做出恰好適用於使用情境的程式結構。

而這個概念亦是可以連貫起來,我先寫高層次的驗收測試,並在驗收測試中寫到要符合哪些測試情境才算是達到,然後再建立起相關的單元測試程式,並在其中編寫需要哪些類別與方法,最後再實作類別方法時,一樣是先寫敘述再去宣告變數與會用到的其他方法。

這樣連貫的編寫,就能讓我們針對功能與其需要,寫出恰如其分的精簡程式碼。一種類似 pull 的方式在寫程式,這個 AHA 讓我當時興奮不已。


上一篇
結對與群體程式設計
下一篇
迭代與增量式的開發
系列文
我想找 12 歲的費曼聊聊敏捷與軟體開發30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言